Probe effect
This article needs additional citations for verification. (December 2009) |
Probe effect is an unintended alteration in system behavior caused by measuring that system. In code profiling and performance measurements, the delays introduced by insertion or removal of code instrumentation may result in a non-functioning application, or unpredictable behavior.
Examples
[edit]In electronics, by attaching a multimeter, oscilloscope, or other testing device via a test probe, small amounts of capacitance, resistance, or inductance may be introduced. Though good scopes have very slight effects, in sensitive circuitry these can lead to unexpected failures, or conversely, unexpected fixes to failures.
In debugging of parallel computer programs, sometimes failures (such as deadlocks) are not present when the debugger's code (which was meant to help to find a reason for deadlocks by visualising points of interest in the program code) is attached to the program. This is because additional code changed the timing of the execution of parallel processes, and because of that deadlocks were avoided.[1] This type of bug is known colloquially as a Heisenbug, by analogy with the observer effect in quantum mechanics.
See also
[edit]Sources
[edit]- ^ Event manipulation for Nondeterministic Shared-Memory Programs / High-Performance Computing and Networking. 9th International Conference, HPCN Europe 2001, Amsterdam, the Netherlands, June 25–27, 2001,